Fix commands run on paths with danger-pr in them #1375
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This fixes an issue I encountered when I was running danger commands from a project that has
danger-pr*
in the project name.The issue is because the replace searches and finds the first instance of
danger-{command}
in the path and replaces it withdanger-runner
. So when inside a project likedanger-project-setup
you end up with an errorThe fix I've implemented is to create a regex with the command, searching for the
danger-${name}\.js$
at the end of the path and replace it. So we're covered for the other commands as well. Although I could possibly clean up the loop logic and just generate a regex that covers the array of commands, I've decided to keep this PR simple to make the change easy to approve.The easiest way to reproduce this issue is to create a project like
danger-project-setup
and run thedanger pr
command inside the project.